home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_200 / 218_02 / suffix.c < prev   
Encoding:
C/C++ Source or Header  |  1980-01-01  |  37.1 KB  |  607 lines

  1. /*
  2.  * Suffix table for hyphenation. Taken from the public domain Bell Labs
  3.  * hyphenation algorithm.
  4.  *
  5.  * Edits:
  6.  *    01 13-May-81 RBD  Initial edit
  7.  */
  8.  
  9. static char sufa[] =
  10.    {
  11.    02,0200+'t',                                             /* -TA */
  12.    02,0200+'s',                                             /* -SA */
  13.    03,0200+'t','r',                                         /* -TRA */
  14.    03,0200+'d','r',                                         /* -DRA */
  15.    03,0200+'b','r',                                         /* -BRA */
  16.    02,0200+'p',                                             /* -PA */
  17.    02,0200+'n',                                             /* -NA */
  18.    02,0200+'m',                                             /* -MA */
  19.    03,0200+'p','l',                                         /* -PLA */
  20.    02,0200+'l',                                             /* -LA */
  21.    02,0200+'k',                                             /* -KA */
  22.    03,0200+'t','h',                                         /* -THA */
  23.    03,0200+'s','h',                                         /* -SHA */
  24.    02,0200+'g',                                             /* -GA */
  25.    02,0200+'d',                                             /* -DA */
  26.    02,0200+'c',                                             /* -CA */
  27.    02,0200+'b',                                             /* -BA */
  28.    00
  29.    };
  30.  
  31. static char sufc[] =
  32.    {
  33.    04,'e','t',0200+'i',                                     /* ET-IC */
  34.    07,'a','l',0200+'i','s',0200+'t','i',                    /* AL-IS-TIC */
  35.    04,'s',0200+'t','i',                                     /* S-TIC */
  36.    04,'p',0200+'t','i',                                     /* P-TIC */
  37.    05,0200+'l','y','t',0200+'i',                            /* -LYT-IC */
  38.    04,'o','t',0200+'i',                                     /* OT-IC */
  39.    05,'a','n',0200+'t','i',                                 /* AN-TIC */
  40.    04,'n',0200+'t','i',                                     /* N-TIC */
  41.    04,'c',0200+'t','i',                                     /* C-TIC */
  42.    04,'a','t',0200+'i',                                     /* AT-IC */
  43.    04,'h',0200+'n','i',                                     /* H-NIC */
  44.    03,'n',0200+'i',                                         /* N-IC */
  45.    03,'m',0200+'i',                                         /* M-IC */
  46.    04,'l',0200+'l','i',                                     /* L-LIC */
  47.    04,'b',0200+'l','i',                                     /* B-LIC */
  48.    04,0200+'c','l','i',                                     /* -CLIC */
  49.    03,'l',0200+'i',                                         /* L-IC */
  50.    03,'h',0200+'i',                                         /* H-IC */
  51.    03,'f',0200+'i',                                         /* F-IC */
  52.    03,'d',0200+'i',                                         /* D-IC */
  53.    03,0200+'b','i',                                         /* -BIC */
  54.    03,'a',0200+'i',                                         /* A-IC */
  55.    03,0200+'m','a',                                         /* -MAC */
  56.    03,'i',0200+'a',                                         /* I-AC */
  57.    00
  58.    };
  59.  
  60. static char sufd[] =
  61.    {
  62.    04,0200+'w','o','r',                                     /* -WORD */
  63.    04,0200+'l','o','r',                                     /* -LORD */
  64.    04,0200+'f','o','r',                                     /* -FORD */
  65.    04,0200+'y','a','r',                                     /* -YARD */
  66.    04,0200+'w','a','r',                                     /* -WARD */
  67.    05,0200+'g','u','a','r',                                 /* -GUARD */
  68.    04,0200+'t','a','r',                                     /* -TARD */
  69.    05,0200+'b','o','a','r',                                 /* -BOARD */
  70.    04,0200+'n','a','r',                                     /* -NARD */
  71.    05,0200+'l','i','a','r',                                 /* -LIARD */
  72.    04,0200+'i','a','r',                                     /* -IARD */
  73.    04,0200+'g','a','r',                                     /* -GARD */
  74.    04,0200+'b','a','r',                                     /* -BARD */
  75.    03,0200+'r','o',                                         /* -ROD */
  76.    04,0200+'w','o','o',                                     /* -WOOD */
  77.    04,0200+'h','o','o',                                     /* -HOOD */
  78.    04,0200+'m','o','n',                                     /* -MOND */
  79.    04,0200+'t','e','n',                                     /* -TEND */
  80.    05,0200+'s','t','a','n',                                 /* -STAND */
  81.    04,0200+'l','a','n',                                     /* -LAND */
  82.    04,0200+'h','a','n',                                     /* -HAND */
  83.    04,0200+'h','o','l',                                     /* -HOLD */
  84.    04,0200+'f','o','l',                                     /* -FOLD */
  85.    05,0200+'f','i','e','l',                                 /* -FIELD */
  86.    03,0200+'v','i',                                         /* -VID */
  87.    03,0200+'c','i',                                         /* -CID */
  88.    04,0200+'s','a','i',                                     /* -SAID */
  89.    04,0200+'m','a','i',                                     /* -MAID */
  90.    04,'t',0200+'t','e',                                     /* T-TED */
  91.    03,'t',0200+'e',                                         /* T-ED */
  92.    04,0200+'d','r','e',                                     /* -DRED */
  93.    04,0200+'c','r','e',                                     /* -CRED */
  94.    04,0200+'b','r','e',                                     /* -BRED */
  95.    05,'v',0200+'e','l','e',                                 /* V-ELED */
  96.    0100+04,'a','l',0200+'e',                                /* AL/ED */
  97.    0140+03,0200+'e','e',                                    /* /EED */
  98.    040+05,'e','d',0200+'d','e',                             /* ED-DED */
  99.    04,'d',0200+'d','e',                                     /* D-DED */
  100.    040+04,'e','d',0200+'e',                                 /* ED-ED */
  101.    03,'d',0200+'e',                                         /* D-ED */
  102.    05,0200+'d','u','c','e',                                 /* -DUCED */
  103.    0300+02,'e',                                             /* E/D */
  104.    05,0200+'s','t','e','a',                                 /* -STEAD */
  105.    04,0200+'h','e','a',                                     /* -HEAD */
  106.    00
  107.    };
  108.  
  109. static char sufe[] =
  110.    {
  111.    05,'a','r',0200+'i','z',                                 /* AR-IZE */
  112.    05,'a','n',0200+'i','z',                                 /* AN-IZE */
  113.    05,'a','l',0200+'i','z',                                 /* AL-IZE */
  114.    06,0200+'a','r','d',0200+'i','z',                        /* -ARD-IZE */
  115.    05,0200+'s','e','l','v',                                 /* -SELVE */
  116.    05,0200+'k','n','i','v',                                 /* -KNIVE */
  117.    05,0200+'l','i','e','v',                                 /* -LIEVE */
  118.    0100+03,0200+'q','u',                                    /* /QUE */
  119.    07,'o','n',0200+'t','i','n',0200+'u',                    /* ON-TIN-UE */
  120.    03,0200+'n','u',                                         /* -NUE */
  121.    03,0200+'d','u',                                         /* -DUE */
  122.    0300+02,'u',                                             /* U/E */
  123.    0300+05,'q','u','a','t',                                 /*  QUAT/E */
  124.    04,'u',0200+'a','t',                                     /* U-ATE */
  125.    05,0200+'s','t','a','t',                                 /* -STATE */
  126.    04,0200+'t','a','t',                                     /* -TATE */
  127.    06,0200+'t','o','r',0200+'a','t',                        /* -TOR-ATE */
  128.    05,'e','n',0200+'a','t',                                 /* EN-ATE */
  129.    04,0200+'m','a','t',                                     /* -MATE */
  130.    05,0200+'h','o','u','s',                                 /* -HOUSE */
  131.    05,0200+'c','l','o','s',                                 /* -CLOSE */
  132.    04,'i',0200+'o','s',                                     /* I-OSE */
  133.    04,0200+'w','i','s',                                     /* -WISE */
  134.    05,'a','s',0200+'u','r',                                 /* AS-URE */
  135.    040+04,0200+'s','u','r',                                 /* -SURE */
  136.    06,0200+'f','i','g',0200+'u','r',                        /* -FIG-URE */
  137.    040+03,0200+'t','r',                                     /* -TRE */
  138.    05,0200+'s','t','o','r',                                 /* -STORE */
  139.    04,0200+'f','o','r',                                     /* -FORE */
  140.    05,0200+'w','h','e','r',                                 /* -WHERE */
  141.    06,0200+'s','p','h','e','r',                             /* -SPHERE */
  142.    03,0200+'d','r',                                         /* -DRE */
  143.    03,0200+'c','r',                                         /* -CRE */
  144.    03,0200+'b','r',                                         /* -BRE */
  145.    05,0200+'s','c','o','p',                                 /* -SCOPE */
  146.    04,'y',0200+'o','n',                                     /* Y-ONE */
  147.    05,0200+'s','t','o','n',                                 /* -STONE */
  148.    05,0200+'p','h','o','n',                                 /* -PHONE */
  149.    04,0200+'g','o','n',                                     /* -GONE */
  150.    04,'e',0200+'o','n',                                     /* E-ONE */
  151.    040+04,0200+'e','n','n',                                 /* -ENNE */
  152.    040+05,'a',0200+'r','i','n',                             /* A-RINE */
  153.    05,0200+'c','l','i','n',                                 /* -CLINE */
  154.    04,0200+'l','i','n',                                     /* -LINE */
  155.    007,00200+'r','o','u',00200+'t','i','n',                 /*-ROU-TINE */
  156.    04,0200+'s','o','m',                                     /* -SOME */
  157.    04,0200+'c','o','m',                                     /* -COME */
  158.    04,0200+'t','i','m',                                     /* -TIME */
  159.    03,0200+'z','l',                                         /* -ZLE */
  160.    03,0200+'t','l',                                         /* -TLE */
  161.    03,0200+'s','l',                                         /* -SLE */
  162.    03,0200+'p','l',                                         /* -PLE */
  163.    05,0200+'v','i','l','l',                                 /* -VILLE */
  164.    04,'c','k',0200+'l',                                     /* CK-LE */
  165.    03,0200+'k','l',                                         /* -KLE */
  166.    03,0200+'g','l',                                         /* -GLE */
  167.    03,0200+'f','l',                                         /* -FLE */
  168.    03,0200+'d','l',                                         /* -DLE */
  169.    03,0200+'c','l',                                         /* -CLE */
  170.    05,0200+'p','a',0200+'b','l',                            /* -PA-BLE */
  171.    05,'f','a',0200+'b','l',                                 /* FA-BLE */
  172.    05,0200+'c','a',0200+'b','l',                            /* -CA-BLE */
  173.    06,0200+'s','t','a','b','l',                             /* -STABLE */
  174.    04,0200+'a','b','l',                                     /* -ABLE */
  175.    03,0200+'b','l',                                         /* -BLE */
  176.    04,0200+'d','a','l',                                     /* -DALE */
  177.    04,0200+'m','a','l',                                     /* -MALE */
  178.    04,0200+'s','a','l',                                     /* -SALE */
  179.    04,0200+'l','i','k',                                     /* -LIKE */
  180.    0340+05,'g',0200+'u','a','g',                            /* -G/UAGE */
  181.    05,0200+'r','i','a','g',                                 /* -RIAGE */
  182.    05,'e','r',0200+'a','g',                                 /* ER-AGE */
  183.    04,'m',0200+'a','g',                                     /* M-AGE */
  184.    04,'k',0200+'a','g',                                     /* K-AGE */
  185.    04,'d',0200+'a','g',                                     /* D-AGE */
  186.    04,0200+'w','i','f',                                     /* -WIFE */
  187.    05,0200+'k','n','i','f',                                 /* -KNYFE */
  188.    03,0200+'s','e',                                         /* -SEE */
  189.    04,0200+'f','r','e',                                     /* -FREE */
  190.    0340+02,'e',                                             /* EE */
  191.    04,0200+'w','i','d',                                     /* -WIDE */
  192.    04,0200+'t','i','d',                                     /* -TIDE */
  193.    04,0200+'s','i','d',                                     /* -SIDE */
  194.    06,0200+'q','u','e','n','c',                             /* -QUENCE */
  195.    07,0200+'f','l','u',0200+'e','n','c',                    /* -FLU-ENCE */
  196.    040+06,'e','s',0200+'e','n','c',                         /* ES-ENCE */
  197.    06,'e','r',0200+'e','n','c',                             /* ER-ENCE */
  198.    05,'i',0200+'e','n','c',                                 /* I-ENCE */
  199.    040+05,0200+'s','a','n','c',                             /* -SANCE */
  200.    06,'e','r',0200+'a','n','c',                             /* ER-ANCE */
  201.    06,'a','r',0200+'a','n','c',                             /* AR-ANCE */
  202.    05,0200+'n','a','n','c',                                 /* -NANCE */
  203.    07,0200+'b','a','l',0200+'a','n','c',                    /* -BAL-ANCE */
  204.    05,'i',0200+'a','n','c',                                 /* I-ANCE */
  205.    07,0200+'j','u','s',0200+'t','i','c',                    /* -JUS-TICE */
  206.    05,0200+'s','t','i','c',                                 /* -STICE */
  207.    05,0200+'p','i','e','c',                                 /* -PIECE */
  208.    05,0200+'p','l','a','c',                                 /* -PLACE */
  209.    0340+01,                                                 /* /E */
  210.    00
  211.    };
  212.  
  213. static char suff[] =
  214.    {
  215.    03,0200+'o','f',                                         /* -OFF */
  216.    05,0200+'p','r','o','o',                                 /* -PROOF */
  217.    04,0200+'s','e','l',                                     /* -SELF */
  218.    03,0200+'r','i',                                         /* -RIF */
  219.    040+04,0200+'l','i','e',                                 /* -LIEF */
  220.    00
  221.    };
  222.  
  223. static char sufg[] =
  224.    {
  225.    03,0200+'l','o',                                         /* -LOG */
  226.    04,0200+'l','o','n',                                     /* -LONG */
  227.    05,'t',0200+'t','i','n',                                 /* T-TING */
  228.    06,0200+'s','t','r','i','n',                             /*  -STRING */
  229.    05,'r',0200+'r','i','n',                                 /* R-RING */
  230.    05,'p',0200+'p','i','n',                                 /* P-PING */
  231.    05,'n',0200+'n','i','n',                                 /* N-NING */
  232.    05,'m',0200+'m','i','n',                                 /* M-MING */
  233.    05,'l',0200+'l','i','n',                                 /*  L-LING */
  234.    05,0200+'z','l','i','n',                                 /* -ZLING */
  235.    05,0200+'t','l','i','n',                                 /* -TLING */
  236.    040+05,'s',0200+'l','i','n',                             /* S-LING */
  237.    05,'r',0200+'l','i','n',                                 /* R-LING */
  238.    05,0200+'p','l','i','n',                                 /* -PLING */
  239.    06,'n',0200+'k','l','i','n',                             /* N-KLING */
  240.    05,'k',0200+'l','i','n',                                 /* K-LING */
  241.    05,0200+'g','l','i','n',                                 /* -GLING */
  242.    05,0200+'f','l','i','n',                                 /* -FLING */
  243.    05,0200+'d','l','i','n',                                 /* -DLING */
  244.    05,0200+'c','l','i','n',                                 /* -CLING */
  245.    05,0200+'b','l','i','n',                                 /* -BLING */
  246.    06,'y',0200+'t','h','i','n',                             /* Y-THING */
  247.    07,'e','e','t','h',0200+'i','n',                         /* EETH-ING */
  248.    06,'e',0200+'t','h','i','n',                             /* E-THING */
  249.    05,'g',0200+'g','i','n',                                 /* G-GING */
  250.    05,'d',0200+'d','i','n',                                 /* D-DING */
  251.    05,'b',0200+'b','i','n',                                 /* B-BING */
  252.    03,0200+'i','n',                                         /* -ING */
  253.    00
  254.    };
  255.  
  256. static    char sufh[] =
  257.    {
  258.    05,0200+'m','o','u','t',                                 /* -MOUTH */
  259.    05,0200+'w','o','r','t',                                 /* -WORTH */
  260.    04,0200+'w','i','t',                                     /* -WITH */
  261.    05,'t',0200+'t','i','s',                                 /* T-TISH */
  262.    05,'e',0200+'t','i','s',                                 /* E-TISH */
  263.    05,'p',0200+'p','i','s',                                 /* P-PISH */
  264.    05,'r',0200+'n','i','s',                                 /* R-NISH */
  265.    05,'n',0200+'n','i','s',                                 /* N-NISH */
  266.    05,0200+'p','l','i','s',                                 /* -PLISH */
  267.    05,0200+'g','u','i','s',                                 /*  -GUISH */
  268.    05,0200+'g','l','i','s',                                 /*  -GLISH */
  269.    05,'b',0200+'l','i','s',                                 /*  B-LISH */
  270.    05,'g',0200+'g','i','s',                                 /* G-GISH */
  271.    05,'d',0200+'d','i','s',                                 /* D-DISH */
  272.    03,0200+'i','s',                                         /* -ISH */
  273.    05,0200+'g','r','a','p',                                 /* -GRAPH */
  274.    07,0200+'b','o','r',0200+'o','u','g',                    /* -BOR-OUGH */
  275.    05,0200+'b','u','r','g',                                 /* -BURGH */
  276.    04,0200+'v','i','c',                                     /* -VICH */
  277.    03,0200+'n','a',                                         /* -NAH */
  278.    03,0200+'l','a',                                         /* -LAH */
  279.    04,0200+'m','i',0200+'a',                                /* -MI-AH */
  280.    00
  281.    };
  282.  
  283. static char sufi[] =
  284.    {
  285.    03,0200+'t','r',                                         /* -TRI */
  286.    03,0200+'c','h',                                         /* -CHI */
  287.    0200+03,'i','f',                                         /* IF-I */
  288.    0200+03,'e','d',                                         /* ED-I */
  289.    05,0200+'a','s','c','i',                                 /* -ASCII */
  290.    04,0200+'s','e','m',                                     /* -SEMI */
  291.    00
  292.    };
  293.  
  294. static char sufk[] =
  295.    {
  296.    04,0200+'w','o','r',                                     /* -WORK */
  297.    04,0200+'m','a','r',                                     /* -MARK */
  298.    04,0200+'b','o','o',                                     /* -BOOK */
  299.    04,0200+'w','a','l',                                     /* -WALK */
  300.    05,0200+'c','r','a','c',                                 /* -CRACK */
  301.    04,0200+'b','a','c',                                     /* -BACK */
  302.    00
  303.    };
  304.  
  305. static char sufl[] =
  306.    {
  307.    03,0200+'f','u',                                         /* -FUL */
  308.    05,'s',0200+'w','e','l',                                 /* S-WELL */
  309.    04,0200+'t','e','l',                                     /* -TELL */
  310.    05,0200+'s','h','e','l',                                 /* -SHELL */
  311.    05,0200+'s','t','a','l',                                 /* -STALL */
  312.    04,0200+'s','t','a',                                     /* -STAL */
  313.    04,0200+'b','a','l',                                     /* -BALL */
  314.    04,0200+'c','a','l',                                     /* -CALL */
  315.    03,'v',0200+'e',                                         /* V-EL */
  316.    03,'u',0200+'e',                                         /* U-EL */
  317.    03,'k',0200+'e',                                         /* K-EL */
  318.    04,'t','h',0200+'e',                                     /* TH-EL */
  319.    05,'t','c','h',0200+'e',                                 /* TCH-EL */
  320.    03,'a',0200+'e',                                         /* A-EL */
  321.    0140+04,0200+'q','u','a',                                /* /QUAL */
  322.    040+03,'u',0200+'a',                                     /* U-AL */
  323.    03,0200+'t','a',                                         /* -TAL */
  324.    04,'u','r',0200+'a',                                     /* UR-AL */
  325.    040+05,'g',0200+'o',0200+'n','a',                        /* G-O-NAL */
  326.    04,'o','n',0200+'a',                                     /* ON-AL */
  327.    03,0200+'n','a',                                         /* -NAL */
  328.    04,0200+'t','i','a',                                     /* -TIAL */
  329.    04,0200+'s','i','a',                                     /* -SIAL */
  330.    040+05,0200+'t','r','i',0200+'a',                        /* -TRI-AL */
  331.    04,'r','i',0200+'a',                                     /* RI-AL */
  332.    04,0200+'n','i',0200+'a',                                /* -NI-AL */
  333.    04,0200+'d','i',0200+'a',                                /* -DI-AL */
  334.    04,0200+'c','i','a',                                     /* -CIAL */
  335.    03,0200+'g','a',                                         /* -GAL */
  336.    04,0200+'m','e','a',                                     /* -MEAL */
  337. /* >>>    040+04,0200+'r','e',0200+'a', */                    /* (del) -RE-AL */
  338.    040+04,0200+'r','e','a',                                 /* -REAL */
  339.    06,'c',0200+'t','i',0200+'c','a',                        /* C-TI-CAL */
  340.    05,0200+'s','i',0200+'c','a',                            /* -SI-CAL */
  341.    04,0200+'i',0200+'c','a',                                /* -I-CAL */
  342.    03,0200+'c','a',                                         /* -CAL */
  343.    03,0200+'b','a',                                         /* -BAL */
  344.    06,0200+'n','o',0200+'m','i',0200+'a',                   /* -NO-MI-AL */
  345.    00
  346.    };
  347.  
  348. static char sufm[] =
  349.    {
  350.    03,0200+'n','u',                                         /* -NUM */
  351.    05,'o',0200+'r','i',0200+'u',                            /* O-RI-UM */
  352.    040+03,'i',0200+'u',                                     /* I-UM */
  353.    040+03,'e',0200+'u',                                     /* E-UM */
  354.    05,'i','v',0200+'i','s',                                 /* IV-ISM */
  355.    04,0200+'t','i','s',                                     /* -TISM */
  356.    05,'i',0200+'m','i','s',                                 /* I-MISM */
  357.    05,'a','l',0200+'i','s',                                 /* AL-ISM */
  358.    040+04,'e',0200+'i','s',                                 /* E-ISM */
  359.    040+04,'a',0200+'i','s',                                 /* A-ISM */
  360.    04,0200+'r','o','o',                                     /* -ROOM */
  361.    03,0200+'d','o',                                         /* -DOM */
  362.    03,0200+'h','a',                                         /* -HAM */
  363.    06,0200+'a',0200+'r','i','t','h',                        /* -A-RITHM */
  364.    05,0200+'r','i','t','h',                                 /* -RITHM */
  365.    00
  366.    };
  367.  
  368. static char sufn[] =
  369.    {
  370.    04,0200+'t','o','w',                                     /* -TOWN */
  371.    04,0200+'d','o','w',                                     /* -DOWN */
  372.    04,0200+'t','u','r',                                     /* -TURN */
  373.    05,0200+'s','p','o','o',                                 /* -SPOON */
  374.    04,0200+'n','o','o',                                     /* -NOON */
  375.    04,0200+'m','o','o',                                     /* -MOON */
  376.    011,'a','l',0200+'i',0200+'z','a',0200+'t','i','o',      /* AL-I-ZA-TION */
  377.    07,0200+'i',0200+'z','a',0200+'t','i','o',               /* -I-ZA-TION */
  378.    07,'l',0200+'i',0200+'a',0200+'t','i','o',               /* L-I-A-TION */
  379.    04,0200+'t','i','o',                                     /* -TION */
  380.    040+05,'s',0200+'s','i','o',                             /* S-SION */
  381.    04,0200+'s','i','o',                                     /* -SION */
  382.    04,'n',0200+'i','o',                                     /* N-ION */
  383.    04,0200+'g','i','o',                                     /* -GION */
  384.    04,0200+'c','i','o',                                     /* -CION */
  385.    03,0200+'c','o',                                         /* -CON */
  386.    05,0200+'c','o','l','o',                                 /* -COLON */
  387.    03,0200+'t','o',                                         /* -TON */
  388.    04,'i','s',0200+'o',                                     /* IS-ON */
  389.    03,0200+'s','o',                                         /* -SON */
  390.    03,0200+'r','i',                                         /* -RIN */
  391.    03,0200+'p','i',                                         /* -PIN */
  392.    03,0200+'n','i',                                         /* -NIN */
  393.    03,0200+'m','i',                                         /* -MIN */
  394.    03,0200+'l','i',                                         /* -LIN */
  395.    03,0200+'k','i',                                         /* -KIN */
  396.    05,0200+'s','t','e','i',                                 /* -STEIN */
  397.    04,0200+'t','a','i',                                     /* -TAIN */
  398.    05,'g','h','t',0200+'e',                                 /* GHT-EN */
  399.    05,0200+'w','o','m',0200+'e',                            /* -WOM-EN */
  400.    03,0200+'m','e',                                         /* -MEN */
  401.    04,'o',0200+'k','e',                                     /* O-KEN */
  402.    03,'k',0200+'e',                                         /* K-EN */
  403.    04,0200+'t','e','e',                                     /* -TEEN */
  404.    04,0200+'s','e','e',                                     /* -SEEN */
  405.    040+03,0200+'s','a',                                     /* -SAN */
  406.    05,0200+'w','o','m',0200+'a',                            /* -WOM-AN */
  407.    03,0200+'m','a',                                         /* -MAN */
  408.    04,0200+'t','i','a',                                     /* -TIAN */
  409.    04,0200+'s','i','a',                                     /* -SIAN */
  410.    040+04,'e',0200+'i','a',                                 /* E-IAN */
  411.    04,0200+'c','i','a',                                     /* -CIAN */
  412.    0300+03,'i','a',                                         /* IA/N */
  413.    05,0200+'c','l','e','a',                                 /* -CLEAN */
  414.    04,0200+'m','e','a',                                     /* -MEAN */
  415.    040+03,'e',0200+'a',                                     /* E-AN */
  416.    00
  417.    };
  418.  
  419. static char sufo[] =
  420.    {
  421.    05,0200+'m','a','c',0200+'r',                            /* -MAC-RO */
  422.    00
  423.    };
  424.  
  425. static char sufp[] =
  426.    {
  427.    05,0200+'g','r','o','u',                                 /* -GROUP */
  428.    02,0200+'u',                                             /* -UP */
  429.    04,0200+'s','h','i',                                     /* -SHIP */
  430.    04,0200+'k','e','e',                                     /* -KEEP */
  431.    00
  432.    };
  433.  
  434. static char sufr[] =
  435.    {
  436.    04,0200+'z','a','r',                                     /* -ZARR */
  437.    0300+02,'r',                                             /* R/R */
  438.    03,0200+'t','o',                                         /* -TOR */
  439.    040+03,0200+'s','o',                                     /* -SOR */
  440.    040+04,0200+'r','i',0200+'o',                            /* -RI-OR */
  441.    04,'i','z',0200+'e',                                     /* IZ-ER */
  442.    05,0200+'c','o','v',0200+'e',                            /* -COV-ER */
  443. /* >>>    04,'o',0200+'v','e', */                             /* (del) O-VER */
  444.    04,0200+'o','v','e',                                     /* -OVER */
  445.    04,0200+'e','v',0200+'e',                                /* -EV-ER */
  446.    8,0200+'c','o','m',0200+'p','u','t',0200+'e',            /* -COM-PUT-ER */
  447.    040+05,'u','s',0200+'t','e',                             /* US-TER */
  448.    05,'o','s','t',0200+'e',                                 /* OST-ER */
  449.    040+05,0200+'a','c',0200+'t','e',                        /* -AC-TER */
  450.    06,0200+'w','r','i','t',0200+'e',                        /* -WRIT-ER */
  451.    040+05,'i','s',0200+'t','e',                             /* IS-TER */
  452.    040+05,'e','s',0200+'t','e',                             /* ES-TER */
  453.    040+05,'a','s',0200+'t','e',                             /* AS-TER */
  454.    04,0200+'s','t','e',                                     /* -STER */
  455.    05,'a','r',0200+'t','e',                                 /* AR-TER */
  456.    04,'r','t',0200+'e',                                     /* RT-ER */
  457.    040+05,'m',0200+'e',0200+'t','e',                        /* M-E-TER */
  458.    05,0200+'w','a',0200+'t','e',                            /* -WA-TER */
  459.    03,'r',0200+'e',                                         /* R-ER */
  460.    04,'o','p',0200+'e',                                     /* OP-ER */
  461.    05,0200+'p','a',0200+'p','e',                            /* -PA-PER */
  462.    04,'w','n',0200+'e',                                     /* WN-ER */
  463.    040+04,'s',0200+'n','e',                                 /* S-NER */
  464.    04,'o','n',0200+'e',                                     /* ON-ER */
  465.    04,'r','m',0200+'e',                                     /* RM-ER */
  466.    03,0200+'m','e',                                         /* -MER */
  467.    04,'l','l',0200+'e',                                     /* LL-ER */
  468.    05,'d',0200+'d','l','e',                                 /* D-DLER */
  469.    04,0200+'b','l','e',                                     /* -BLER */
  470.    03,'k',0200+'e',                                         /* K-ER */
  471.    05,'n',0200+'t','h','e',                                 /* N-THER */
  472.    06,0200+'f','a',0200+'t','h','e',                        /* -FA-THER */
  473.    06,'e','i',0200+'t','h','e',                             /* EI-THER */
  474.    04,'t','h',0200+'e',                                     /* TH-ER */
  475.    04,'s','h',0200+'e',                                     /* SH-ER */
  476.    04,0200+'p','h','e',                                     /* -PHER */
  477.    04,'c','h',0200+'e',                                     /* CH-ER */
  478.    04,'d','g',0200+'e',                                     /* DG-ER */
  479.    04,'r','d',0200+'e',                                     /* RD-ER */
  480.    06,'o','u','n','d',0200+'e',                             /* OUND-ER */
  481.    04,'l','d',0200+'e',                                     /* LD-ER */
  482.    04,'i','d',0200+'e',                                     /* ID-ER */
  483.    05,0200+'d','u','c',0200+'e',                            /* -DUC-ER */
  484.    04,'n','c',0200+'e',                                     /* NC-ER */
  485.    0100+02,0200+'e',                                        /*  /ER */
  486.    03,0200+'s','a',                                         /* -SAR */
  487.    040+06,'a','c',0200+'u',0200+'l','a',                    /* AC-U-LAR */
  488.    040+06,'e','c',0200+'u',0200+'l','a',                    /* EC-U-LAR */
  489.    040+06,'i','c',0200+'u',0200+'l','a',                    /* IC-U-LAR */
  490.    040+06,'e','g',0200+'u',0200+'l','a',                    /* EG-U-LAR */
  491.    00
  492.    };
  493.  
  494. static char sufs[] =
  495.    {
  496.    040+04,'u',0200+'o','u',                                 /* U-OUS */
  497.    05,0200+'t','i','o','u',                                 /* -TIOUS */
  498.    05,0200+'g','i','o','u',                                 /* -GIOUS */
  499.    05,0200+'c','i','o','u',                                 /* -CIOUS */
  500.    040+04,'i',0200+'o','u',                                 /* I-OUS */
  501.    05,0200+'g','e','o','u',                                 /* -GEOUS */
  502.    05,0200+'c','e','o','u',                                 /* -CEOUS */
  503.    04,'e',0200+'o','u',                                     /* E-OUS */
  504.    0140+02,0200+'u',                                        /* /US */
  505.    04,0200+'n','e','s',                                     /* -NESS */
  506.    04,0200+'l','e','s',                                     /* -LESS */
  507.    0140+02,0200+'s',                                        /* /SS */
  508.    040+05,'p',0200+'o',0200+'l','i',                        /* P-O-LIS */
  509.    0140+02,0200+'i',                                        /* /IS */
  510.    0100+03,0200+'x','e',                                    /* X/ES */
  511.    0100+03,0200+'s','e',                                    /* S/ES */
  512.    0100+04,'s','h',0200+'e',                                /* SH/ES */
  513.    0100+04,'c','h',0200+'e',                                /* CH/ES */
  514.    0300+01,                                                 /* /S */
  515.    00
  516.    };
  517.  
  518. static char suft[] =
  519.    {
  520.    06,'i','o','n',0200+'i','s',                             /* ION-IST */
  521.    05,'i','n',0200+'i','s',                                 /* IN-IST */
  522.    05,'a','l',0200+'i','s',                                 /* AL-IST */
  523.    06,'l',0200+'o',0200+'g','i','s',                        /* L-O-GIST */
  524.    05,'h','t',0200+'e','s',                                 /* HT-EST */
  525.    04,'i',0200+'e','s',                                     /* I-EST */
  526.    05,'g',0200+'g','e','s',                                 /* G-GEST */
  527.    04,'g',0200+'e','s',                                     /* G-EST */
  528.    05,'d',0200+'d','e','s',                                 /* D-DEST */
  529.    04,'d',0200+'e','s',                                     /* D-EST */
  530.    04,0200+'c','a','s',                                     /* -CAST */
  531.    05,0200+'h','e','a','r',                                 /* -HEART */
  532.    04,0200+'f','o','o',                                     /* -FOOT */
  533.    03,'i',0200+'o',                                         /* I-OT */
  534.    05,0200+'f','r','o','n',                                 /* -FRONT */
  535.    05,0200+'p','r','i','n',                                 /* -PRINT */
  536.    04,0200+'m','e','n',                                     /* -MENT */
  537.    05,0200+'c','i','e','n',                                 /* -CIENT */
  538.    04,'i',0200+'a','n',                                     /* I-ANT */
  539.    06,0200+'w','r','i','g','h',                             /* -WRIGHT */
  540.    06,0200+'b','r','i','g','h',                             /* -BRIGHT */
  541.    06,0200+'f','l','i','g','h',                             /* -FLIGHT */
  542.    06,0200+'w','e','i','g','h',                             /* -WEIGHT */
  543.    05,0200+'s','h','i','f',                                 /* -SHIFT */
  544.    05,0200+'c','r','a','f',                                 /* -CRAFT */
  545.    040+04,'d','g',0200+'e',                                 /* DG-ET */
  546.    04,0200+'g','o','a',                                     /* -GOAT */
  547.    04,0200+'c','o','a',                                     /* -COAT */
  548.    04,0200+'b','o','a',                                     /* -BOAT */
  549.    04,0200+'w','h','a',                                     /* -WHAT */
  550.    04,0200+'c','u','i',                                     /* -CUIT */
  551.    00
  552.    };
  553.  
  554. static char sufy[] =
  555.    {
  556.    040+04,'e','s',0200+'t',                                 /* ES-TY */
  557.    040+05,'q','u','i',0200+'t',                             /* QUI-TY */
  558.    04,0200+'t','i',0200+'t',                                /* -TI-TY */
  559.    040+05,'o','s',0200+'i',0200+'t',                        /* OS-I-TY */
  560.    04,0200+'s','i',0200+'t',                                /* -SI-TY */
  561.    05,'i','n',0200+'i',0200+'t',                            /* IN-I-TY */
  562.    04,'n','i',0200+'t',                                     /* NI-TY */
  563.    040+010,'f','a',0200+'b','i','l',0200+'i',0200+'t',      /* FA-BIL-I-TY */
  564.    010,0200+'c','a',0200+'b','i','l',0200+'i',0200+'t',     /* -CA-BIL-I-TY */
  565.    010,0200+'p','a',0200+'b','i','l',0200+'i',0200+'t',     /* -PA-BIL-I-TY */
  566.    06,0200+'b','i','l',0200+'i',0200+'t',                   /* -BIL-I-TY */
  567.    03,'i',0200+'t',                                         /* I-TY */
  568.    04,0200+'b','u','r',                                     /* -BUR-Y */
  569.    04,0200+'t','o',0200+'r',                                /* -TO-RY */
  570.    05,0200+'q','u','a','r',                                 /* -QUAR-Y */
  571.    040+04,'u',0200+'a','r',                                 /* U-ARY */
  572.    07,0200+'m','e','n',0200+'t','a',0200+'r',               /* -MEN-TA-RY */
  573.    06,'i','o','n',0200+'a','r',                             /* ION-ARY */
  574.    04,'i',0200+'a','r',                                     /* I-ARY */
  575.    04,'n',0200+'o',0200+'m',                                /* N-O-MY */
  576.    03,0200+'p','l',                                         /* -PLY */
  577.    04,'g',0200+'g','l',                                     /* G-GLY */
  578.    05,0200+'p','a',0200+'b','l',                            /* -PA-BLY */
  579.    05,'f','a',0200+'b','l',                                 /* FA-BLY */
  580.    05,0200+'c','a',0200+'b','l',                            /* -CA-BLY */
  581.    04,0200+'a','b','l',                                     /* -ABLY */
  582.    03,0200+'b','l',                                         /* -BLY */
  583.    02,0200+'l',                                             /* -LY */
  584.    03,0200+'s','k',                                         /* -SKY */
  585.    040+06,'g',0200+'r','a',0200+'p','h',                    /* G-RA-PHY */
  586.    04,'l',0200+'o',0200+'g',                                /* L-O-GY */
  587.    02,0200+'f',                                             /* -FY */
  588.    03,0200+'n','e',                                         /* -NEY */
  589.    03,0200+'l','e',                                         /* -LEY */
  590.    04,'c','k',0200+'e',                                     /* CK-EY */
  591.    03,0200+'k','e',                                         /* -KEY */
  592.    04,0200+'b','o','d',                                     /* -BODY */
  593.    05,0200+'s','t','u','d',                                 /* -STUDY */
  594.    0340+04,'e','e','d',                                     /* EEDY */
  595.    02,0200+'b',                                             /* -BY */
  596.    03,0200+'w','a',                                         /* -WAY */
  597.    03,0200+'d','a',                                         /* -DAY */
  598.    00
  599.    };
  600.  
  601. char *suftab[] =
  602.    {
  603.    sufa, 0, sufc, sufd, sufe, suff, sufg, sufh, sufi, 0,
  604.    sufk, sufl, sufm, sufn, sufo, sufp, 0, sufr, sufs, suft,
  605.    0, 0, 0, 0, sufy, 0
  606.    };
  607.